//index.js
var Util = require('../../utils/util.js');

Page({
  // 监听页面加载
    onLoad:function(){
        var app = getApp();
        var that = this;

        // 隐藏底部菜单
        wx.hideTabBar()
        // 检测是否登陆
        var user_info = wx.getStorageSync('user_info')
        console.log(user_info)

        if (user_info) {
            this.setData({
                authorization_display : true
            })
            // 开启底部菜单
            wx.showTabBar()
            // 
        }else{

            // 开启正在加载动画
            wx.showLoading({
                title:'正在加载..'
            });
        }
        
        // 设置导航栏
        wx.setNavigationBarColor({
            frontColor: '#ffffff',
            backgroundColor: '#00CC33',
            animation: {
                duration: 400,
                timingFunc: 'easeIn'
            }
        })
        // 获取全局的请求API的url地址
        this.data.class_api_url = app.globalData.class_api_url
        // 请求未来一周的日期
        wx.request({
            url: that.data.class_api_url +'&do=bookapi&op=get_week_array',
            header: {
                'content-type': 'application/josn'
            },
            method: 'GET',
            success: function (data) {
                // console.log(data)
                that.setData({
                // 重新设置时期数组
                    date_array : data.data
                })
            }
        }),
        // 请求时段数组
        wx.request({
            url: that.data.class_api_url + '&do=bookapi&op=get_period_array',
            header: {
                'content-type': 'application/josn'
            },
            method: 'GET',
            success: function (data) {
                that.setData({
                    // 重新设置时期数组
                    period_array: data.data
                })
            }
        });
        // 获取当日的时间、日期
        var timestamp = Date.parse(new Date());
        timestamp = timestamp;// 获取当前时间戳
        var dates = new Date(timestamp); 
        var current_year = dates.getFullYear(); //当前年
        var current_month = (dates.getMonth() + 1 < 10 ? '0' + (dates.getMonth() + 1) : dates.getMonth() + 1); // 当前月
        var current_day = dates.getDate() < 10 ? '0' + dates.getDate() : dates.getDate();  //当前日
       
        app.globalData.class_default_date = current_year + '-' + current_month + '-' + current_day
        this.data.class_default_time = app.globalData.class_default_date

        // 根据日期、时间请求约课列表
        wx.request({
            url: that.data.class_api_url + '&do=bookapi&op=get_class_list&date=' + this.data.class_default_time,
            header: {
                'content-type': 'application/josn'
            },
            method: 'GET',
            success: function (data) {
                
                var tpl_class_array = []
                tpl_class_array = data.data[that.data.class_default_period]
                for (var item in tpl_class_array){
                    tpl_class_array[item]['start_time'] = tpl_class_array[item]['start_time'].substring(0, 5)
                    // console.log(tpl_class_array[item]['start_time']);
                }
                that.setData({
                    // 重新设置约课数组
                    class_array: tpl_class_array

                })
               
                // console.log('loading当前时间：' + that.data.class_default_time);
                // console.log('loading请求回来的数据：');
                // console.log(that.data.class_array);
                // 请求完成后，关闭正在加载动画
                wx.hideLoading()
            }
        });

    },
    
    data: {
        // 定义时期数组
        date_array: [],
        // 时段数组
        period_array:[],
        // 可预约的课程数组
        class_array:[],
        // 设置默认的日期和时间
        class_default_period : '早上',
        class_default_time: '', //从全局data获取

        // 新闻类型数组
        new_type_array :[
            '头条', '社会','国内', '国际','娱乐','军事','科技','财经','时尚','体育'
        ],
        objectnew_type_array: [
            { 'new_name': '头条', 'type': 'top' },
            { 'new_name': '社会', 'type': 'shehui' },
            { 'new_name': '国内', 'type': 'guonei' },
            { 'new_name': '国际', 'type': 'guoji' },
            { 'new_name': '娱乐', 'type': 'yule' },
            { 'new_name': '军事', 'type': 'junshi' },
            { 'new_name': '科技', 'type': 'keji' },
            { 'new_name': '财经', 'type': 'caijing' },
            { 'new_name': '时尚', 'type': 'shishang' },
            { 'new_name': '体育', 'type': 'tiyu' },
        ],
        // 初始化选择的新闻类型
        new_name: '头条',
        new_type_name: 'top',
        // 新闻返回的数据
        new_list_array : [],
        // 发起约课相关API请求的地址
        class_api_url: '',
        // 声明当前微信用户信息
        wx_user_info :[],
        // 定义授权窗口是否显示
        authorization_display : false,
    },

    // 自定义函数


    // all function start
    // 时期选择 事件 周几
    select_date : function(e){
        var that = this;
        var app = getApp();
        wx.showLoading({
            title: '正在加载..'
        });
        // e表示当前的view标签
        var munber = e.currentTarget.dataset.munber;// 获取当前点击的日期选择框
        var full_date = e.currentTarget.dataset.full_date;// 获取选择的日期
        app.globalData.class_default_date = full_date //设置全局的时间
        that.data.class_default_period = '早上'
        // console.log('设置全局时间'+full_date);
        for (var index = 0; index < this.data.date_array.length; index++){
            var up = "date_array[" + index + "].display";

            if (index == munber){
                this.setData({
                    [up]: 'selected'
                })
            }else{
                this.setData({
                    [up]: ''
                })
            }
        }
        // 设置时段选中
        for (var index = 0; index < this.data.period_array.length; index++) {
            var up = "period_array[" + index + "].class";
            if (index == 0) { // 切换日期后，默认选中早上
                this.setData({
                    [up]: 'period_select'
                })
            } else {
                this.setData({
                    [up]: ''
                })
            }
        }
        // 获取约课列表
        wx.request({
            url: that.data.class_api_url + '&do=bookapi&op=get_class_list&date=' + full_date,
            header: {
                'content-type': 'application/josn'
            },
            method: 'GET',
            success: function (data) {
                // console.log(data.data);
                var tpl_class_array = []
                tpl_class_array = data.data[that.data.class_default_period]
                for (var item in tpl_class_array) {
                    tpl_class_array[item]['start_time'] = tpl_class_array[item]['start_time'].substring(0, 5)
                    // console.log(tpl_class_array[item]['start_time']);
                }
                that.setData({
                    // 重新设置约课数组
                    class_array: tpl_class_array

                })
                // 请求完成后，关闭正在加载动画1
                wx.hideLoading()
            }
        })
    },

    // 时段选择事件
    select_period :function(e){
        var app = getApp(); 
        // 开启正在加载动画
        wx.showLoading({
            title: '正在加载..'
        });
        var that = this;
        var munber = e.currentTarget.dataset.munber;// 获取当前点击的日期选择框
        var period_name = e.currentTarget.dataset.period_name // 获取点击的时段名 如早上等
        app.globalData.class_default_period = period_name// 设置全局的时段名
        this.data.class_default_period = period_name
        for (var index = 0; index < this.data.period_array.length; index++) {
            var up = "period_array[" + index + "].class";
            if (index == munber) {
                this.setData({
                    [up]: 'period_select'
                })
            } else {
                this.setData({
                    [up]: ''
                })
            }
        }

        // 切换可约课的时间列表 发情请求
        // console.log(e)
        console.log('点击的时间：' + app.globalData.class_default_date)
        console.log('点击的时段：' + period_name)
        wx.request({
            url: that.data.class_api_url + '&do=bookapi&op=get_class_list&date=' + app.globalData.class_default_date,
            header: {
                'content-type': 'application/josn'
            },
            method: 'GET',
            success: function (data) {

                var tpl_class_array = []
                tpl_class_array = data.data[that.data.class_default_period]
                for (var item in tpl_class_array) {
                    tpl_class_array[item]['start_time'] = tpl_class_array[item]['start_time'].substring(0, 5)
                    console.log(tpl_class_array[item]['start_time']);
                }
                that.setData({
                    // 重新设置约课数组
                    class_array: tpl_class_array

                })

                // 请求完成后，关闭正在加载动画
                wx.hideLoading()
            }
        })
    },

    // 查看约课详情
    class_detail :function(){
        // 调用对话框
        wx.showModal({
            title :'提示',
            content :'你还有一节私教课，是否购买私教课？',
            showCancel : true,
            success: function (confirm){
                // 点击之后执行的函数，confirm 包含点击取消还是确认的信息
                if (!confirm.confirm){
                    // 点击取消事件
                    // 跳转
                    wx.navigateTo({
                        url: '../class_detail/index'
                    })
                }else{
                    // 点击确认事件
                    console.log('跳转去购买私教课！');
                }

            }
        })
    },

    // 查询最新新闻
    bindPickerChange:function(e){
        var value_index = e.detail.value;
        // 设置name和type
        this.setData({
            new_name: this.data.objectnew_type_array[value_index]['new_name'],
            new_type_name: this.data.objectnew_type_array[value_index]['type']
        })
    },
    get_new: function () {
        var that = this;
        // 发起请求，获取最新新闻
        wx.showLoading({
            title:'正在请求..',
        }),
        wx.request({
            url: 'http://clx.fologde.com/wx_api.php?type=' + this.data.new_type_name,
            header: {
                'content-type': 'application/json'
            },
            method: 'GET',
            success: function (data) {
                var result = data.data.result.data;
                that.setData({
                    new_list_array : result,
                });
                wx.hideLoading()
            },
        })
    },

    // 新页面打开新闻 详情
    open_new_page : function(e){
        // 获取当前点击的新闻的url
        var new_url = e.target.dataset.src;
        console.log(new_url);
        wx.navigateTo({
            url: '../template/new_page',
        })
        var app = getApp();
        app.globalData.open_new_url = new_url;
    },

    // 进入个人中心
    jump_personal_conter: function () {
        getApp().globalData.footer_info_array[0]['current_img'] = getApp().globalData.footer_info_array[0]['no_active_img'],
        getApp().globalData.footer_info_array[2]['current_img'] = getApp().globalData.footer_info_array[2]['active_img'],
        wx.reLaunch({
            url: '../personal_center/index',
        })
    },

    // 首页流程说明
    process_explain:function(){
        wx.showModal({
            title:'流程说明',
            content:"1、流程说明流程说明流程说明；\n2、流程说明流程说明流程说明;\n3、流程说明流程说明流程说明",
            showCancel:false,
        })
    },

    // 获取用户信息
    onGotUserInfo : function(res){
        var that = this
        // console.log(res)
        // 将用户信息保存至 本地
        wx.setStorage({
            key: 'wx_base_info',
            data: res.detail.userInfo,
            success: function () {
                console.log('保存用户信息到本地成功！')
                that.setData({
                    authorization_display: true
                })
                // 开启底部菜单
                wx.showTabBar()
                // 进行获取code、openid、入库等操作
                Util.code_transition_openid()
            }
        })
    },

    // 清除本地保存的微信用户信息
    clear_wx_user_info:function(){
        wx.removeStorage({
            key:'wx_base_info',
            success:function(){
                console.log('清除用户信息到本地成功！')
            }
        })
    }
})
